package com.hzgj.bcl.soa.stats;

import com.alibaba.fastjson.annotation.JSONField;
import com.hzgj.bcl.stats.StatsConst;

import java.io.Serializable;

public class StatsData implements Serializable {
    // 消息 ID
    @JSONField(name = "mid")
    public Long messageId;
    // 上下文 ID
    @JSONField(name = "cid")
    public String contextId;
    // 父消息 ID
    @JSONField(name = "pid")
    public String parentId;
    // 来源程序
    @JSONField(name = "sname")
    public String srcName;
    // 目标程序
    @JSONField(name = "dname")
    public String dstName;
    // 来源 IP
    @JSONField(name = "shost")
    public String srcHost;
    // 目标 IP
    @JSONField(name = "dhost")
    public String dstHost;
    // 目标 端口
    @JSONField(name = "dport")
    public Integer dstPort;
    // 服务名
    @JSONField(name = "service")
    public String service;
    // 方法名
    @JSONField(name = "method")
    public String method;
    // 调用是否成功
    @JSONField(name = "ok")
    public boolean success;
    // 错误信息
    @JSONField(name = "error")
    public String error;
    // 调用耗时(单位毫秒)
    @JSONField(name = "span")
    public long span;
    // 生成消息时间
    @JSONField(name = "time")
    public long time;
    //类型(数据、tick)
    @JSONField(name = "type")
    public String type = StatsConst.STATS_DATA_TYPE;
}
